为什么 AI 需要先查身份
让 AI 直接 git push 听起来方便,但有个前提:它得知道用哪个 GitHub 账号、凭据是否健康、有没有对应权限。盲目 push 可能:
- 用错账号(推到了别人的仓库)
- 凭据过期导致静默失败
- 越权操作了不该动的仓库
github_identity_status 就是开工前的"身份体检":先看清楚再动手。
github_identity_status:开工前先照镜子
github_identity_status({})
它返回:
- 当前生效的 GitHub 账号(免密连接的实际身份)
- 凭据健康度(有效 / 过期 / 缺失)
- Git 提交作者信息(user.name / user.email)
- 权限范围(scopes)
- 过期时间
什么时候该查
- 第一次在某个仓库让 AI 提交前:确认身份对、权限够。
- push 失败排查时:先看是不是凭据过期,而不是盲目重试。
- 换了机器 / 重装后:身份配置可能丢失,先查再动。
如果没连上 GitHub 怎么办
工具明确说:如果没设置或需要重连,让你(操作员)去 Agent Settings 里连接 GitHub。AI 不会、也不应该自己去申请 GitHub 凭据——这是安全边界。
正确顺序:
github_identity_status确认状态。
- 若缺失/过期 → 提示你去设置页连接(AI 不代申请)。
- 重连后再查一次,确认健康。
- 才执行 commit / push。
Git 协作的安全姿势
| 动作 | AI 该做 / 不该做 |
|------|----------------|
| git status / git diff | ✅ 随便看 |
| git commit | ✅ 身份确认后提交,写清楚 message |
| git push | ⚠️ 先查身份,只推你授权的仓库 |
| 改 .gitignore / 历史重写 | ⚠️ 先问,别擅自动 |
| 申请 GitHub 凭据 | ❌ 绝不,交给操作员 |
提交纪律
- message 说人话:"新增 6 篇 OpenClaw 实战文章并重建首页",别写 "update"。
- 别一把梭
git add -A:确认改动范围,避免把密钥/缓存塞进仓库。
- push 前先
git pull --rebase:减少冲突,尤其多人仓库。
关键行为(必须知道)
- AI 读不到你的 GitHub 密码:连接是 OAuth/凭据托管,模型侧只有"当前身份"的只读视图。
- 凭据过期不会自动修复:工具只报告状态,重连得你去设置页。
- 权限范围受限:不是所有仓库都能推,按你实际授权来。
- 本地 git 作者信息要正确:
user.name/email错了对协作追踪不利,身份体检会一并显示。
标准工作流
- 要提交前 →
github_identity_status确认身份健康、权限够。
- 缺失/过期 → 提示你去 Agent Settings 连接,不代申请。
- 健康 →
git add <具体文件>+git commit -m "..."。
- push → 先 rebase 再推你授权的仓库。
- 失败回查 → 再跑一次
github_identity_status看是不是凭据问题。
踩坑与反模式
- ❌ 不问身份直接 push:可能推错仓库或用过期凭据白忙。
- ❌ 让 AI 去申请 GitHub 登录:安全边界,必须由操作员在设置页完成。
- ❌
git add -A一把梭:容易把.env、密钥、大缓存带进版本库。
- ✅ 先体检再动手:
github_identity_status是 Git 协作的第一步。
一句话总结
AI 帮你提交代码前,先 github_identity_status 照镜子:身份对、凭据健康、权限够,才 commit/push;缺连接让你去设置页,AI 绝不代申请凭据。
扫码关注公众号,获取更多 OpenClaw 实操技巧:
